(レポート) Elastic{ON} Tour 2015 in Tokyo キーノート #elasticon
本レポートは2015年12月16日に開催されたElastic{ON} Tour 2015 in Tokyo、キーノートのレポートです。
レポート
Shay Banon, Elastic CEO.
Elasticのスタートについて。
妻がシェフになろうとロンドンに行った。
シェフになりたい妻のためのアプリケーションを作ろうとした。
そこで出会ったのがApache Lucene。Luceneの不満を解消するためにCompassを作り、Elasticsearchを作った。
Elasticsearch。5年前にOSS化。とても沢山の人に使ってもらった。
OSS化後、数ヶ月で仕事をやめ、フルタイムでコミットし始めた。
コミュニティが大きくなったので、事業化した。Elastic社。
どのくらい使われているか?40,000,000ダウンロード。
これだけダウンロードがあるということは、お客様にバリューを提供できている立証だ。
非常に誇りを持っている採用事例。
Wikipedia、Wikimedia財団全体の検索エンジンとして使われている。
他言語サポート、先進的でシンプルなクエリ。Wikipediaでの検索は必ずElasticsearchが使われている。
Mozilla。いろいろな用途で使っている。Firefoxのクラッシュレポートやセキュリティソリューションの基盤。
Elasticsearchの上に様々なソリューションが作られている。
NASA。火星探索機から地球に送られてきたデータの検索。5年前には予測もしなかったユースケース。
検索が様々な問題を解決している。
Verison。5000億以上のドキュメントをElasticsearchに格納。様々なソリューションの基盤として活用。
Elastic Stack。主要なコンポーネントの開発。OSS。
Elsaticsearch、格納、インデックス化、分析。
私たちはプロダクトにこだわっていない。大事なのはユーザー。ユーザーが必要なものを作る。
ユーザーが欲しがったビジュアライズとしてKibanaを開発。
データの見た目だけでなく、どうやってElasticsearchにデータを取り込んでいくか。
Elasticsearchにデータを取り込むデファクトスタンダード。Logstashとbeats。
Logstashは以前からあるもの。様々なデータをリッチ化しElasticsearchに取り込む。
beatsは最近リリースされた製品。Logstashはサーバ側のコンポーネント、エッヂマシン側のコンポーネントがbeats。
Packetbeats。とても軽量なネットワーク解析。
オープンソーススタックの拡張。コマーシャルエクステンション。
たくさんの会社がElasticにより価値を見出してくれるもの。
Elasticsearch Enterpriseは無い。コマーシャルエクステンションで機能を拡張していく。
セキュリティや可用性はコマーシャルエクステンションで担保。
私たちはGraph APIを構築した。非常に面白いので是非見て欲しい。
Elasticsearch。
分散型、拡張性の高い検索エンジン。開発者にとってフレンドリーな製品。
APIを通じて全てアクセス可能、AWSでもクラスタを簡単に構築できる。
アナリティクスが非常に優れている。検索とはアナリティクスを必ず含むもの。
Elasticsearch 2.0のFeatureについて。
リカバリー時間の短縮。
Durable writes。永続的な書き込み。デフォルトで出来ていなかったfsyncを使って書き込まれたファイルの永続性を担保。
Java Security Manager。JVMのセキュリティマネージャーをデフォルトでサポート。アプリケーションをロックダウン。
このためにたくさんのライブラリを書き換えた。安全にElasticsearchが使えるようになった。
パフォーマンスの改善。
大規模クラスターへの対応。これまではクラスタノードが増減するためにクラスターリストの全書き換えがあった。今後は差分だけ同期する。
メモリとストレージの改善。Javaヒープのメモリ使用量を大幅に削減、圧縮率を高く。
キャッシングの自動化とスロットリング。今回非常に力を入れたところ。
アナリティクスの拡充。
Column storeが実装。doc_values。列クエリの高速化だけでなく、効率的な演算が可能。
ディスク上のデータを使って検索するのでデータをメモリ展開する必要が無くなり、メモリ使用量が大幅に削減。
時系列データの計算。累積しない、レイテンシデータのような、ポイントごとの変化を見たいものを見ることができるように。
履歴データから予測、パイプライン分析をするための新たなロジック。
将来的なFeature。
全く新しいジオロケーション機能。Geo2。次のメジャーリリースで実現したい。
クエリのプロファイリング。ユーザーに対して、クラスタの中で何が起きているのかをできるだけ多く伝える。
非常に複雑な検索要件があると、どこで問題があるのか分かりづらい。
検索プロファイリング機能によって、検索リクエストの中でどこで時間がかかっているのかがわかるようになる。
管理機能。
インデックスの修正やマッピングの張り替えなどが行えるRe-Index APIを開発中。APIでインデックスを貼り直すことができるようになる。
クラスタ内のタスク管理API。クラスタ内で共通的に必要なタスクのステータスを管理し、キャンセルもできるようにする。
さらに開発中のもの。
一番基本的なリッチ化のニーズに応える。Ingest、パイプラインによってデータのリッチ化を可能にするもの。
Logstashを使わなくてもbeatsから直接Elasticsearchにデータを入れられるような。
もう1つ。Elasticsearchの中にScriptを取り組み、様々な使われ方がされてきている。より一層安全にScriptを実現可能なようにする。
オリジナルなScript言語。2つの要件。高速でセキュア。次のメジャーリリースで提供したい。
Rashid Khan, Kibana Creator.
もともと新聞社のエンジニア。会社で発生する問題を可視化するためにKibanaを作ったのがスタート。
Elasticsearchはエンジニアしか使えない。ボスでも簡単に使えるものが欲しかった。だからKibanaを作った。
Kibana。
Kibanaはデータの問題を解決するためのもの。Elasticsearchによって早い応答性がある。
インタラクティブに、よりディープにデータを見ることが出来る。
Kibana 4はファセットからアグリゲーションへ。すぐにデータを深く見ることが出来る。
ビジュアライズ。バブルチャート、ヒートマップの追加。Geoデータもどんどん改善していく。
カスタマイズの改善。人間が見てよりわかるように。Field formatterによってデータフォーマットを自動的に見やすく。地図の表示も改善。
ApacheやNginxのセットアップをやらなくても良いように、Kibana 4からはサーバを内包。
サーバで何が起きているかが分かるように、Kibana serverのStatus checkページを開発。
KibanaはOSSであり、OSSコミュニティメンバーが使いやすいように、多くの人がわかっているテクノロジーを使う。
先進的で分かりづらいものは使わない。コミュニティにコミットしやすいものを使う。
今後のFeature。UI Framework。これもメジャーなテクノロジーによって実装。
Elasticsearchが最近よく使われる時系列データ。Logstashが優れているからと言って良い可視化が出来るわけじゃない。そこでKibana。
最近開発したのがtimelion。Kibanaで様々な独自関数を使ってヴィジュアライズ出来る。ぜひいろいろ試してほしい。
Tanya Bragin, Product Management.
Ingest。Elasticsearchにどうやってデータを取り込むか。
ElasticsearchはAPIが柔軟に出来ているので、様々な形でデータがインポートできる。私たちもすぐに使い始めてもらえるツールをリリースしている。
Logstash。ログだけじゃなく、構造化されたデータを取り込み、リッチ化し、他のシステムに取り込む。汎用的なETLツール。
重要な改善。
新しいプラグイン管理。Configurationの変更が一瞬で出来るので簡単にプラグインが取り込める。
オフラインのプラグインインストールが出来るようになった。
プラグインのエコシステム。多くのプラグインのコントリビューターがいる。200以上のPluginがすぐに使える。
Kafka、JDBC、HTTP、Salesforce、WebHDFS。
もし欲しいものが無ければ皆さんで是非作ってください。
今後のFeature。
回復力。Elasticsearchが死んでいてもデータがロストしないように、Logstashでデータを永続的で可変長なキューに入れて溜めておく。
beats。Elasticの新しいメンバー。
オープンソースのData Shipper。最初のユースケースはネットワークアナリティクス、Packetbeat。
Packetbeatに限らず、もっと大きなログコレクタ基盤として使えると考えた。
beatから直接Elaticsearchにデータを送り込めるが、OptionalとしてLogstashを介することも出来る。
More Beats。Filebeat、Packetbeat、Topbeat。コミュニティベースでDockerbeatなどもある。
beatsのFeature。Packetbeatの対応プロトコル拡張。Metricsbeat。Beatsの集中管理。
ES-Hadoop。ElasticsearchのHadoopコネクタ。
ElasticsearchとHadoopの統合をするもの。双方向のデータの流れを実現する。
Steve Mayzak, Solution Architecture.
エクステンションについて。
Shield。
ユーザー/パスワードをElasticsearchに加える。
LCAPやADとのインテグレーション。監査ログの取得。
Shield 2.1での拡張。フィールドやドキュメントレベルでのアクセスコントロール。カスタム認証の取り込み。SSO。
ShieldのFeature。Configuration API。ノードごとの設定ではなくクラスタ横断的な設定を可能に。管理UI。
Watcher。
アラート通知。どんなデータでもアラートとして引っ掛けて通知できる。柔軟に対応可能。
Watcher 2.1。SlackやHipchatとネイティブに統合。Inputの組み合わせによるアラート検知。
WatcherのFeature。管理UI。Kibanaとの統合。Kibanaのエクステンションのように使えるように。自動化の推進。
Marvel。
Elasticsearchクラスタの管理。時系列でパフォーマンス、メトリクスを確認できる。
Marvel 2.1。Kibana 4ベース。重要なメトリクスをすぐ見れるようなナビゲーションバー。
MarvelのFeature。ES Logsのダイレクトインデクシング。Logstash、Kibana、Beatsの監視も可能なように。
その他Feature。
Graph APIとUI。とてもエキサイティング。
マルチクラスタのレプリケーション。世界中のリージョン間でクラスタ設定の同期が可能。
機械学習。機械学習を通じてお客様にもっと活用して頂きたい。
Shay Banon、再度登壇
1年前、ノルウェーの会社と一緒になった。Found。
Elasticsearch as a service。AWS上で動作。
Found上で簡単にKibanaをONにできる。スケールアップ/ダウンも簡単に。最新のElasticsearchをすぐに使える。
FoundのFeature。Found On Premise。as a Serviceを組織の中で。ダウンロードして使えるようにする。
さいごに
午後は国内での事例セッションがあります。楽しんできます!